#!/bin/bash

# 一键启动后台管理系统测试脚本
echo "🚀 正在启动后台管理系统..."

# 检查端口占用并清理
echo "📋 检查端口占用情况..."
lsof -ti:8080 | xargs kill -9 2>/dev/null || true
lsof -ti:3002 | xargs kill -9 2>/dev/null || true

# 等待端口释放
sleep 2

# 启动Python API服务器
echo "🔧 启动Python登录API服务器 (端口8080)..."
cd /Users/andylau/Dropbox/AppDevelopment/CMB250716
python3 simple-login-api.py &
API_PID=$!

# 等待API服务器启动
echo "⏳ 等待API服务器启动..."
sleep 3

# 检查API服务器是否启动成功
if curl -s http://localhost:8080/health > /dev/null; then
    echo "✅ API服务器启动成功"
else
    echo "❌ API服务器启动失败"
    kill $API_PID 2>/dev/null
    exit 1
fi

# 启动前端开发服务器
echo "🎨 启动前端开发服务器 (端口3002)..."
cd /Users/andylau/Dropbox/AppDevelopment/CMB250716/admin
npm run dev &
FRONTEND_PID=$!

# 等待前端服务器启动
echo "⏳ 等待前端服务器启动..."
sleep 5

# 检查前端服务器是否启动成功
if curl -s http://localhost:3002 > /dev/null; then
    echo "✅ 前端服务器启动成功"
else
    echo "❌ 前端服务器启动失败"
    kill $API_PID $FRONTEND_PID 2>/dev/null
    exit 1
fi

echo ""
echo "🎉 系统启动完成！"
echo "📍 前端地址: http://localhost:3002"
echo "🔑 测试登录信息:"
echo "   邮箱: admin@example.com"
echo "   密码: admin123"
echo ""
echo "🌐 正在自动打开浏览器..."

# 自动打开浏览器
open http://localhost:3002

echo ""
echo "📋 服务器进程信息:"
echo "   API服务器 PID: $API_PID"
echo "   前端服务器 PID: $FRONTEND_PID"
echo ""
echo "⚠️  按 Ctrl+C 停止所有服务器"

# 等待用户中断
trap 'echo "\n🛑 正在停止服务器..."; kill $API_PID $FRONTEND_PID 2>/dev/null; echo "✅ 所有服务器已停止"; exit 0' INT

# 保持脚本运行
while true; do
    sleep 1
done